// written by Ray Zeller and Alex Keybl

#ifndef HTMLOUTPUTTER_H_
#define HTMLOUTPUTTER_H_
#include <string>
#include <fstream>
#include <set>
#include "Event.h"
#include "Appt.h"
#include "Processor.h"
#include <vector>

using namespace std;


class HTMLOutputter
{
public:
	HTMLOutputter();
	void getTable(vector<Event> testEvents, string prefix);
	void getList(vector<Event> testEvents, string prefix);
	virtual ~HTMLOutputter();
private:
	string makeRow(int date, string prefix);
	string makeTime(int startTime);
	string makeColSpan(int cols);
	string makeHyperlink(string desc, string prefix);
	void beginHyperlink(ofstream& myfile, int i, int j, string prefix);
	void beginTime(ofstream& myfile, string prefix);
	int getRepeats(int i, int j);
	void makeCell(ofstream& myfile, int i, string prefix);
	string makeFileName(string desc, string prefix);
	bool fileExists(string fname);
	string addClass(string tag, string cssClass);
	vector< vector <string> > myOutput;
	Processor myProcessor;
};


#endif /*HTMLOUTPUTTER_H_*/

